package com.powergisol.gis.service;

import com.powergisol.gis.config.ServiceFeignConfig;
import com.powergisol.gis.service.impl.WFSServiceImpl;
import com.powergisol.gis.service.impl.WMSServiceImpl;
import feign.Response;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * @author Frog
 */
@FeignClient(value = "gis-wfs", fallback = WFSServiceImpl.class,configuration = ServiceFeignConfig.class)
public interface WFSService {

    @RequestMapping(value = "gis/wfs", method = RequestMethod.GET)
    String getWfs1LayerResponse(@RequestParam(value = "service") String service,
                                @RequestParam(value = "request") String request,
                                @RequestParam(value = "maxFeatures") int maxFeatures,
                                @RequestParam(value = "typeNames") String typeNames,
                                @RequestParam(value = "version") String version,
                                @RequestParam(value = "startIndex") int startIndex);

    @RequestMapping(value = "gis/wfs", method = RequestMethod.GET)
    String getWfs1LayerResponse(@RequestParam(value = "service") String service,
                                @RequestParam(value = "version") String version,
                                @RequestParam(value = "request") String request,
                                @RequestParam(value = "count") String count,
                                @RequestParam(value = "startIndex") String startIndex,
                                @RequestParam(value = "typeName") String typeName,
                                @RequestParam(value = "typeNames") String typeNames,
                                @RequestParam(value = "maxFeatures") String maxFeatures,
                                @RequestParam(value = "outputFormat") String outputFormat,
                                @RequestParam(value = "filter") String filter);


}
